package serve;

import po.Good;
import po.GoodDB;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

@WebServlet("/Pur")
public class Pur extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 获取请求参数中的商品ID
        String id = req.getParameter("id");
        System.out.println(id);

        if (id == null) {
            // 如果未提供商品ID，则重定向到商品列表页面
            resp.sendRedirect("goods");
            return;
        }

        // 根据ID获取商品信息
        Good good = GoodDB.getById(id);

        // 获取或创建与请求关联的Session
        HttpSession session = req.getSession(true);

        // 获取购物车信息
        List<Good> cart = (List<Good>) session.getAttribute("cart");
        if (cart == null) {
            // 如果购物车为空，创建新的购物车列表
            cart = new ArrayList<>();
            session.setAttribute("cart", cart);
        }

        // 将所选商品添加到购物车中
        cart.add(good);

        // 创建名为 "JSESSIONID" 的 Cookie，并设置其有效期为30分钟
        Cookie cookie = new Cookie("JSESSIONID", session.getId());
        cookie.setMaxAge(60 * 30);

        // 将 Cookie 写回到客户端浏览器
        resp.addCookie(cookie);

        // 重定向到购物车列表页面
        resp.sendRedirect("CartList");
    }
}
